package com.loiane.dao;

import java.util.List;

import org.hibernate.SessionFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.orm.hibernate3.HibernateTemplate;
import org.springframework.stereotype.Repository;

import com.loiane.model.Tipo;

@Repository
public class TipoDAO implements ITipoDAO {

	private HibernateTemplate hibernateTemplate;
	
	@Autowired
	public void setSessionFactory(SessionFactory sessionFactory) {
		hibernateTemplate = new HibernateTemplate(sessionFactory);
	}
	
	@SuppressWarnings("unchecked")
	public List<Tipo> getTipos(){
		System.out.println("entroooooo");
		List<Tipo> listarpta = null;
		System.out.println("procede a llamar");
		
		try {
			listarpta = hibernateTemplate.find("from Tipo");
		} catch (Exception e) {
			// TODO: handle exception
		}
		
		
		if(listarpta!=null){
			System.out.println("lista tipos: "+listarpta.size());
		}else{
			System.out.println("lista tipos es nula");
		}
	 
		
		return listarpta;
	}

	public void deleteTipo(int id) {
		// TODO Auto-generated method stub
		Object record=hibernateTemplate.load(Tipo.class, id);
		hibernateTemplate.delete(record);
	}

	public Tipo saveTipo(Tipo tipo) {
		// TODO Auto-generated method stub
		hibernateTemplate.saveOrUpdate(tipo);
		return tipo;
	}

}
